﻿using System;
using System.Linq;
using System.Collections.Generic;
namespace VsxFactory.Modeling.Repository
{
    /// <summary>
    /// 
    /// </summary>
    public interface IPackageRepository
    {
        PackageSource Source { get; }
        IQueryable<PackageInfo> GetPackages();
        void InstallPackage(PackageInfo info);
        void Uninstall(PackageInfo info);
    }

    public interface IStandardPackageRepository : IPackageRepository
    {
        void RegisterStandardProvider(Lazy<Strategies.IStrategyProvider, Strategies.IStrategyProviderMetadata> s);
    }

}
